n = int(input())
lst = [6,8,4,2]
if n == 0:
print(1)
else:
print(lst[n%4])
#include <bits/stdc++.h>
#include<iostream>
#define ll long long
#define endl '\n'
#define F first
#define S second
#define ld long double
#define fast ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define gcd(x, y) __gcd(x, y)
#define lcm(x, y) (x * y) / gcd(x, y)
#define all(v) v.begin(), v.end()
#define rall(v) v.rbegin(), v.rend()
#include <string>
#define pp push_back()
using namespace std;
int arr[104]={0};
vector<pair<int,int> >p1;
vector<char>vc;
vector<int>v1,v2;
vector<string>str1,str2,str3;
set<int>s;
map<char,int>mp;
string s1,s2,s3,s4,s5,str4;
int sum=0,prod=1,k=0,q=0,t=0,mini=0,maxi=0,c=0;
bool tt=true,ff=false;
void zeroes(vector<int>ve,int n){
for(int i=0;i<n;i++)ve[i]=0;
}
bool cmp(pair<int, int>& a,
pair<int, int>& b)
{
return a.second < b.second;
}
int find_OR(int arr[],int n){
int ans=0;
for(int i=0;i<n;i++)ans=(ans|arr[i]);
return ans;
}
void DS(){
fast
int n;
cin>>n;
int a[4]={6,8,4,2};
if(n==0)cout<<1;
else cout<<a[n%4];
}
int main()
{
DS();
return 0;
}
20. Valid Parentheses | 746. Min Cost Climbing Stairs |
392. Is Subsequence | 70. Climbing Stairs |
53. Maximum Subarray | 1527A. And Then There Were K |
1689. Partitioning Into Minimum Number Of Deci-Binary Numbers | 318. Maximum Product of Word Lengths |
448. Find All Numbers Disappeared in an Array | 1155. Number of Dice Rolls With Target Sum |
415. Add Strings | 22. Generate Parentheses |
13. Roman to Integer | 2. Add Two Numbers |
515. Find Largest Value in Each Tree Row | 345. Reverse Vowels of a String |
628. Maximum Product of Three Numbers | 1526A - Mean Inequality |
1526B - I Hate 1111 | 1881. Maximum Value after Insertion |
237. Delete Node in a Linked List | 27. Remove Element |
39. Combination Sum | 378. Kth Smallest Element in a Sorted Matrix |
162. Find Peak Element | 1529A - Eshag Loves Big Arrays |
19. Remove Nth Node From End of List | 925. Long Pressed Name |
1051. Height Checker | 695. Max Area of Island |